#pragma once

#include <QDockWidget>
#include <QFrame>
#include "UIUtilsExport.h"
#include "WindowInterface.h"

class QLabel;
class QToolButton;
class QToolBar;

namespace Domy {

class UIUTILS_EXPORT DockWidgetInterface : public QWidget, public WindowInterface
{
    Q_OBJECT
public:
    explicit DockWidgetInterface(ActionEnableCtrl ctrl, QWidget *parent)
        : QWidget(parent), WindowInterface(ctrl) {}
    ~DockWidgetInterface() {}

    /**
     * @brief doAction
     * @note  触发动作
     */
    virtual void doAction(ActionKey key) override {}

    /**
     * @brief createDockWidget
     * @note  创建dock
     */
    virtual QDockWidget *createDockWidget() = 0;
};

} // namespace Domy
